package com.wei.czz.framework.game.dao;

import com.wei.czz.framework.game.entity.GamePrizeEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2023-03-16 11:36:29
 * className: GamePrizeDao 游戏奖品数据库交互接口
 * version: 1.0
 * description:
 */
public interface GamePrizeDao extends BaseMapper<GamePrizeEntity> {

    /**
     * 查询游戏奖品最大排序等级
     * @param gameId     游戏主键
     * @param deleteFlag 删除状态
     * @return 最大排序等级
     */
    Integer getMaxSort(@Param("gameId") Long gameId, @Param("deleteFlag") Integer deleteFlag);

    /**
     * 累计所有游戏奖品的中奖概率
     * @param gameId     游戏主键
     * @param status     状态
     * @param deleteFlag 删除状态
     * @return 中奖概率总和
     */
    Integer sumProbability(@Param("gameId") Long gameId, @Param("status") Integer status,
                           @Param("deleteFlag") Integer deleteFlag);

    /**
     * 增加游戏奖品使用次数
     * @param prizeId    奖品主键
     * @param updateTime 更新时间
     */
    int addUseNum(@Param("prizeId") Long prizeId, @Param("updateTime") Date updateTime);
}
